[SVM] Fix 64-bit VMRUN.
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Thu, 17 Aug 2006 18:24:20 +0000 (19:24 +0100)
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Thu, 17 Aug 2006 18:24:20 +0000 (19:24 +0100)
Signed-off-by: Keir Fraser <keir@xensource.com>
xen/arch/x86/hvm/svm/x86_64/exits.S

index 184c10cc1e8a21697b3480e0b983cbaf390f286b..248a58f1313fd558af275b010d8e80f72d3153a9 100644 (file)
@@ -107,8 +107,7 @@ ENTRY(svm_asm_do_launch)
         movq %rax, VMCB_rax(%rcx)
         leaq root_vmcb_pa(%rip), %rax
         movl VCPU_processor(%rbx), %ecx
-        shll $3, %ecx
-        addq %rcx, %rax
+        movq (%rax,%rcx,8), %rax
         VMSAVE
 
         movq VCPU_svm_vmcb_pa(%rbx), %rax
@@ -139,10 +138,9 @@ ENTRY(svm_asm_do_launch)
         HVM_SAVE_ALL_NOSEGREGS
 
         GET_CURRENT(%rbx)
-        movl VCPU_processor(%rbx), %ecx
         leaq root_vmcb_pa(%rip), %rax
-        shll $3, %ecx
-        addq %rcx, %rax
+        movl VCPU_processor(%rbx), %ecx
+        movq (%rax,%rcx,8), %rax
         VMLOAD
 
         STGI